package com.jxdinfo.hussar.example.tsgl.bookflow.service;

import com.jxdinfo.hussar.example.tsgl.bookflow.model.Bookflow;
import com.jxdinfo.hussar.support.mp.base.service.HussarService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jxdinfo.hussar.example.tsgl.bookflow.vo.BookflowPageVO;
import com.jxdinfo.hussar.platform.core.base.apiresult.ApiResponse;
import com.jxdinfo.hussar.example.tsgl.bookflow.dto.BookflowDto;

/**
 * 图书管理流程服务类
 */
public interface BookflowService extends HussarService<Bookflow> {

    /**
     * 提交流程表单时操作业务表数据
     */
    String formsubmitreject(BookflowDto bookflowDto, String businessKey);

    /**
     * 图书管理流程提交流程表单(优先提交至驳回节点)
     */
    ApiResponse<String> flowFormSubmitReject(BookflowDto bookflowDto);

    /**
     * 图书管理流程表单查询
     */
    ApiResponse<Bookflow> formQuery(String id);

    /**
     * 图书管理流程表格查询（带分页）
     *
     * @param page 分页对象
     * @return 查询结果
     */
    ApiResponse<BookflowPageVO> hussarQueryPage(Page<Bookflow> page);

    /**
     * 图书管理流程表格查询（带分页）
     *
     * @param page 分页对象
     * @return 查询结果
     */
    ApiResponse<BookflowPageVO> hussarQueryPage_order_custom(Page<Bookflow> page);
}
